iT邦幫忙

2023 iThome 鐵人賽

DAY 25
0
自我挑戰組

全端網頁-入職三十天學習筆記系列 第 25

【全端網頁開發】Day25-重構 .NET 系統改寫前後端分離

  • 分享至 

  • xImage
  •  

前言

入職接近一個月要準備接手專案的部分,
會從一個舊的框架.NET系統,要改成前後端分離,
將後端分成Restful API的方式進行,
那這篇會寫一下前後端分離的觀念。

什麼是前後端分離?

前後端分離是指將一個WEB的前端(通常是用戶界面和用戶互動)
和後端(通常是數據處理和業務邏輯)的開發和維護過程分開。
這允許前端和後端的開發團隊獨立工作,並且可以使用不同的技術,以更好地滿足其需求。

重構.NET系統改寫前後端分離

在現代軟體開發世界中,前後端分離已經成為一種主要的開發模式,
它提供了更多的彈性、可擴展性以及更好的團隊協作方式。

理解前後端分離的優勢

首先,我們需要清楚為什麼要將現有的 .NET 應用程序轉型為前後端分離。
前後端分離的主要優勢包括:

  • 更好的團隊協作:前端和後端開發人員可以獨立工作,並且更容易協同工作。
  • 更容易擴展:可以獨立擴展前端和後端,無需干擾整個應用程序。
  • 更好的性能:前端和後端可以獨立優化,提供更好的性能。
  • 更容易維護:代碼更模組化,更容易維護和測試。

重構系統用不同語言的困難

首先需要理解現有系統的運作方式。
如果計劃將一個系統從一種語言轉換為另一種語言,需要熟悉這兩種語言的特性和功能。
需要了解系統的架構、數據流、庫和框架的使用方式等等,理解有助於確定如何最好地執行重構。

掌握新的後端技術

轉向前後端分離還需要學習後端技術,以處理數據處理和業務邏輯。
以下是一些後端技術的選擇:

  • Python:一個多功能的編程語言,擁有豐富的後端框架(如Django、Flask),可用於不同類型的應用程序。
  • Node.js:一個基於JavaScript的後端選項,非常適合與前端框架配合使用。
  • Ruby:Ruby on Rails是一個流行的Web框架,專注於開發速度和簡潔的代碼。

學習 API 開發

前後端分離的關鍵是通過API(應用程序編程接口)來連接前端和後端。
需要學習如何設計和實現API,以便前端可以訪問數據和功能。

整合現有代碼

如果是原先項目中已經有現有的代碼,
需要考慮如何將它整合到新的前後端分離架構中。
這可能需要一些重構和調整,但可以幫助您重用現有的業務邏輯。

常見挑戰

  1. 跨域請求(CORS)
    由於前後端分離,通常會出現跨域請求(CORS)的問題,需要確保後端允許來自不同域的請求。

  2. 安全性
    前後端分離可能會導致一些安全風險,例如跨站腳本(XSS)攻擊。
    需要實施適當的安全措施,以保護應用程序,包括輸入驗證、身份驗證和授權機制。

  3. 配置和部署
    分離的前後端需要獨立配置和部署。
    這需要良好的自動化流程和持續集成/持續部署(CI/CD)管道,以確保代碼的高質量和可靠性。

結語

重構一個.NET系統以實現前後端分離是一個挑戰性的任務,但能帶來許多潛在的好處。
通過克服相應的挑戰,團隊可以實現更好的協作、更好的性能、更容易的維護和更多的技術選擇。
這個過程需要細心的計劃和執行,但可以為應用程序帶來長遠的價值和競爭優勢。


上一篇
【全端網頁開發】Day24- RESTful API 入門指南
下一篇
【全端網頁開發】Day26-API命名:提升開發者體驗和系統可讀性的關鍵
系列文
全端網頁-入職三十天學習筆記30
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言